Bluemo Computational Linear Algebra ノート
線形代数をcomputer前提でやるみたいな入門授業 おもろい、実用的blu3mo.icon
コメントとかツッコミとか寄り道とかもらえると嬉しいですblu3mo.icon*3
と思ったが、事情が変わってこの授業を切ることになったので中断
-- 以下ノート --
Introduction, vectors, NumPy 現実の色々なものはlinearではないが、linear functionで近似する事ができる linear functionで近似すれば、linear algebraの色々な道具を使えるので嬉しい
overview
Linear Transformations
線形変換ってやつかな、線形の関数は線形変換をやっているみたいな ほぼ同義でいいtakker.icon
写像(=函数)のうち、入力と出力の集合が同じものを変換と呼ぶこともあるが、著者の定義に依る
eigenvalues/eigenvectors
なんだこれ、初耳blu3mo.icon
ドイツ語?
"eigen"という冠頭の言葉は, もともとドイツ語で「固有の」または「特有の」という意味を表す言葉である.
こっちはなんか聞いたことあるblu3mo.icon
関数同士の関係のループ、みたいな感じ?
多分連立漸化式や連立微分方程式がらみで関連していると言っているのだと思うtakker.icon
マルコフ連鎖をあまり知らないのでなんとも言えないけど
関数同士の関係のループ=漸化式?takker.icon
$ f(n+1)=g(n,f(n))みたいなやつ
Singular Value Decomposition
PCAとか、機械学習でなんか触った覚えblu3mo.icon 復習
Field
四則演算が定義された集合
$ \mathbb{Q, R, C}など
$ \mathbb{Z}は割り算が定義できないからアウトなのか
Scalar: Fieldの要素
Vector: list of scalars
Dimention: Vectorの要素の数
次元、なんかもっと複雑な定義があった覚えblu3mo.icon
ベクトルの"dimension"の定義と、集合の"dimension"の定義は別のもの、という事らしい
なるほどblu3mo.icon*2
集合の次元?そんなのあったっけ?takker.icon
dimension of setと言っていたblu3mo.icon
空間のことかもしれない?
dimention→dimension?
本当だ、感謝blu3mo.icon
Transpose
vectorの場合: row vectorとcolumn vectorを交換するような操作
TeXで書くなら$ V^Tで良い?blu3mo.icon $ V^{\intercal}というのもあるらしい
いつも$ V^\topを使っていた
今度から$ \intercalを使うか
[[1,2,3]].T == [[1],[2],[3]]
1D arrayに.Tをかけても何も起こらないらしいblu3mo.icon
transposeしても同じ型、という制約があるのかな
ndarray、n-dimentional arrayという意味だったのかblu3mo.iconyosider.icon
visualization
ベクトルの可視化は2D/3Dが限界
一見そうな気がするが、本当に?blu3mo.icon
4D~5Dは色とか駆使すれば出来そう
複素関数のplotで色を使うtakker.icon ベクトルでできる演算
足し算
違ったblu3mo.icon
Commutativity $ v+w=w+v
Associativity $ (u+v)+w=u+(v+w)
Identity $ v+0=v
Inverse $ v+(-v)=0
掛け算
scalarをかけると、方向大きさのみ変わる
Associativity $ a(bv)=(ab)v
Identity $ 1\cdot v=v
Distributivity $ a(v+w)=av+aw
分配法則
方向?大きさ?yosider.icon
大きさだ、感謝blu3mo.icon
vectorをかけるのは二タイプある、dot/cross
本当はもっとあるtakker.icon
一般的な線型代数の範囲で使うのはdotとcrossのみ
テンソルの話に踏み込むと、テンソル積や二重縮合が出てくる
「Identity」という特性が、v+0=vと1v=vの両方を指しているのはちょっと気になったblu3mo.icon
「そのままになる何かの演算」をidentityと呼んでいるのだと思う
ここだけプロセスではなく結果でグルーピングしている?blu3mo.icon
本当は対象とする演算子を指定しなきゃだめtakker.icon
$ \exist 0\in V\forall v\in V;v+0=vなら「体$ V上で定義された二項演算子$ +に関する単位元の存在」、$ \exist 1\in V\forall v\in V;1\cdot v=vなら「体$ V上で定義された二項演算子$ \cdotに関する単位元の存在」となる
このあたりは既知、多分聞くの4回目くらいblu3mo.icon
linear combination
av+bu みたいなやつ
Span of vectors
あるベクトルの集合$ \vec v_1... \vec v_nを任意のスカラーで線型結合して得られるベクトルの集合がspan($ \vec v_1... \vec v_n)
https://gyazo.com/87012093dcdcc0d20267b905533d6868
あ〜、なんか見覚えあるblu3mo.icon*2
が、過去の日本語のノートが見つからない
「$ \{\pmb{v}_i\}_{i\in\Lambda}で張られる空間」とよく呼ばれるtakker.icon span( (1,1) ) = span( (2,2) ) = span( (-1,-1) )
無限に表現方法はある
span( (1,1), (2,2) ) = span( (1,1) )
Vector Products
dot productは知ってるblu3mo.icon
numpyだとyosider.icon
code:py
np.dot(v, w)
なんか知らんやつ:
dot productの結合前、みたいなhttps://gyazo.com/7031bd0b75479ff10d1cc4bbedcc7aee
dot productの計算ミスでよくこれ見がちblu3mo.icon
別名も多い
numpyだとyosider.icon
code:py
v * w
https://gyazo.com/5e2c5e42a9067a30bc2d09f99f39e203
$ \pmb{v}\otimes\pmb{w}=(\sum_i v_i\pmb{e}_i)\otimes(\sum_j w_j\pmb{e}_j)=\sum_{i,j}v_i w_j\pmb{e}_i\otimes\pmb{e}_j
$ =v_1w_1\pmb{e}_1\otimes\pmb{e}_1+v_1w_2\pmb{e}_1\otimes\pmb{e}_2+\cdots+v_1w_n\pmb{e}_1\otimes\pmb{e}_n
$ +v_2w_1\pmb{e}_2\otimes\pmb{e}_1+v_2w_2\pmb{e}_2\otimes\pmb{e}_2+\cdots+v_2w_n\pmb{e}_2\otimes\pmb{e}_n
$ +\cdots
$ +v_mw_1\pmb{e}_m\otimes\pmb{e}_1+v_mw_2\pmb{e}_m\otimes\pmb{e}_2+\cdots+v_mw_n\pmb{e}_m\otimes\pmb{e}_n
基底を省いて行列形式で表示すると$ \begin{bmatrix}v1w_1&v_1w_2&\cdots&v_1w_n\\v2w_1&v_2w_2&\cdots&v_2w_n\\\vdots&\vdots&\ddots&\vdots\\v_mw_1&v_mw_2&\cdots&v_mw_n\\\end{bmatrix}になる
何かと思ったが、よく見たら名前外積だからcross productのことか? いや、違うみたい?blu3mo.icon
外積は、クロス積の意味で使われることもあるため、どちらの意味で使われているか注意が必要である。直積 色々な「外積」blu3mo.icon
高校でやるやつ
この授業で扱ってるやつ
テンソル積と呼ぶと区別しやすいtakker.icon
exterior product = 外積 もある..?blu3mo.icon
これはcross product = クロス積 と同じかもしれないblu3mo.icon
違うものと捉えたほうがいいですtakker.icon
まだ学んでないので詳しいことは言えないですが、微分形式など、微分幾何学を取り扱うときに現れます まじか、ややこしい
逆にこんな被りがあるのに解決しようとならないのかなblu3mo.icon
まぁ方言みたいなものなので...hatori.icon 日本語の数学用語だと岩波数学辞典の記述に従う、という方法がある numpyだとyosider.icon
code:py
np.outer(v, w)
Matrices, matrix operations
Linear equations, Gaussian elimination
Vector spaces, solving Ax=b
Independence, basis, and dimension
Linear transformations
Exam 1
Orthogonal projections, Gram-Schmidt
Least squares, linear regression
Determinants, eigenvalues/eigenvectors
Diagonalization, dynamical systems
Symmetric matrices, quadratic forms
SVD, PCA
TBD
Exam 2